mechanism primitive




parse and create symbol tables syntax used in .dsl files comments
begin scope $<xxx>__BeginScope
output $<xxx>__Output
set field $<xxx>__SetField_<yyy>_from_<yyy> at first, I thought that ‘field’ might be different from Stack, hence, the <yyy>_from_<yyy> syntax now, make ‘field’ the same as the source stack <yyy>_from_<yyy>> is now redundant, this can be replaced by <yyy> (where ‘from’ is no longer needed in the syntax)
append $<xxx>__AppendFrom_<yyy>
coerce $<xxx>__CoerceFrom_<yyy>



use symbol tables (all of the above, plus ...)
begin scope using lookup $<xxx>__BeginScopeFrom_<yyy>
end scope $<xxx>__EndScope
begin mapping $<xxx>__BeginMapping map means iteration over list
next $<xxx>__Next
end mapping $<xxx>__EndMapping



external methods


$name__GetName

$name__Combine

$scriptDeclaration__ClearFormalsInBootstrap




N.B. “$” is a legal character in an identifier (CL identifier rules)

N.B. “_” is a legal character in an identifier (CL identifier rules)